1. Field of the Invention
The present invention relates to the field of printing and in particular, to systems and methods for processing Page Description Languages (PDLs) in the context of Personalized Print Markup Language (PPML).
2. Description of Related Art
Document processing software allows users to view, edit, process, and store documents conveniently. Pages in a document may be displayed on screen exactly as they would appear in print. However, before the document can be printed, the data must be converted into a form that can be recognized and used by a printer. To do this, pages in the document are often described in a page description language (PDL). A PDL is used to create instructions which can be sent to a printer or a display device in order to produce a desired set of viewable output. These instructions generally include means for describing the layout of the viewable output even when the final output is not to a physical medium. As used in this application PDLs may include PostScript™, Adobe™ PDF, HP™ PCL™, Microsoft™ XPS™, and variants thereof as well as any other languages used to describe pages in a document.
A PDL description of a document provides a high-level description of each page in a document. This PDL description is often translated to a series of lower-level printer-specific commands when the document is being printed. The printer or printing device can use the low-level printer-specific commands to place marks on a print medium. The various flavors of PDLs offer different advantages for different applications. For example, some PDLs can provide better or faster printing performance, while others can provide higher graphical quality with certain types of viewable data and/or graphical applications.
One class of PDL languages include those governed by the Personalized Printer Markup Language (PPML) specification, which permits printer languages to identify, store, and re-use text and graphic elements. PPML can be an XML-based language and can speed up the printing of certain print jobs by permitting the storage and re-use of text and graphic elements thus reducing rasterization and bandwidth overheads. PPML allows printers to manipulate data components at the object level instead of at the page level. In other words, by lowering the granularity of the information stored by a printer to the object-level, PPML allows code to attach names to objects and re-use the objects as needed during the process of printing of variable-data print jobs.
Before the introduction of PPML, printing architectures were developed using the framework that written instructions would be provided in a single PDL, and PDLs would be processed to determine and format the layout of the page being printed. In this sense, non-PPML PDLs are page-based languages in that each PDL has its specific approach to separately describe the layout of a page and its contents. Other features of printing architectures, such as language determination, selection, and initiation were also based upon this framework.
With the introduction of PPMLs, one or more PDLs may be called to render portions of a page and standard page-based processing methods such as page layout and language identification methods can be adapted for use in a PPML context. Therefore there is a need for flexible and efficient schemes for PDL language processing outside of the context of the traditional single PDL to single page framework, while retaining the capability for language processing to occur in a page-based context.